Method and apparatus for controlling a contact center

ABSTRACT

A switching apparatus for a contact center is integrated into a legacy contact center including a PBX. The switching capacity of both of the PBX and the switch are utilized efficiently by handing off controller specific desktop agents between the central processor and the PBX.

TECHNICAL FIELD

[0001] This invention relates to telecommunications contact centers, andmore specifically, to an improved technique of controlling andmonitoring a plurality of agent stations in the contact center.

BACKGROUND OF THE INVENTION

[0002] Many large customer oriented companies maintain a call center inorder to permit agents to interact with customers. A typical example ofsuch a call center would be that maintained by an airline or credit cardcompany, where customers may call in with questions, make reservations,etc. Often the call centers include the ability to do automated outboundcalling to selected customers as well.

[0003] Recently, these call centers have evolved into full “contactcenters.” A contact center is substantially the same as a call centerother than the fact that communications may be in a variety of media,instead of just by telephone. For example, a contact center may have theability to support agent customer interaction via e-mail, web chat,video, etc. The particular types of interactions are the subject of theclient's own choice, and the contact center may support some or all suchinteractions.

[0004] Contact centers will often co-exist and complement PBX systems.PBX systems provide telephony functions to a set of users in a businessenvironment. In one type of architecture, contact center software willdirect the operation of the PBX via a computer telephony interface (CTI)link.

[0005] Recently, full contact center systems have become available thatcomprise both contact center software and contact center switches in asingle system. One such contact center system is sold by the Assignee ofthe present patent application under the trademark CCPRO. These contactcenter systems typically comprise a plurality of call center softwareapplications as well as switching capability for routing incoming andoutgoing contacts between customers and agents. In many modern contactcenters, the call center system is added to an existing PBX system.

[0006] When adding a call center system, an issue arises regarding howto integrate such new hardware, and associated software, with theexisting PBX and agent stations. Specifically, both the PBX and thecontact center switch contain switching capacity, and both may beaddressing the same set or subset of users. Thus, there is the potentialfor conflict in controlling the operation of the call center. It isimportant to note that either the PBX or the contact center switch canuse either traditional analog or digital telephony to connect thedesktop devices together, and to connect desktop devices to the publicnetworks; or either or both the PBX or the contact center switch can usepacket or cell based data networks—for example, an Internet protocolnetwork—to provide such connectivity.

[0007]FIG. 1 shows a typical technique utilized to integrate the callcenter applications hardware/software (hereinafter “call centerapplication's switch”, “call center switch” or “switch”) with the PBX.In the arrangement of FIG. 1, a semi-permanent connection is “nailed up”between call center applications 102 and telephones 104-106. The PBX isused to nail up this connection, operating as a semi-permanent patchpanel rather than an actual switching device. Specifically, the PBX isutilized to establish semi-permanent connections from telephones 104-106to call center applications switch 102. The semi-permanent connectionsare established when an agent logs on to the contact center system, andpersist during the period of time in which the agent is logged in.Different semi-permanent connections are established through PBX 103 foreach of the telephones 104-106. The nailed up connection is initiated byswitch 102 after the agent at one of terminals 107-109 logs onto switch102. Switch 102 knows which telephone extension is associated with eachof terminals 107-109, and can thus nail up the appropriate connection.The data and voice terminal are associated with each other to form theagent positions 120-122 as shown.

[0008] In the arrangement of FIG. 1, call center switch 102 includesswitching hardware analogous to that included in the PBX. Thus, all ofthe applications and the switching are executed on the hardware denotedcall center switch 102. The PBX is simply left to patch connectionstogether.

[0009] One problem with the arrangement of FIG. 1 is the increased costresulting from all of the connections. Specifically, switch 102 requiresa port to connect to each of data terminals 107-109, another port foreach voice terminal 104-106 connected to the switch through the PBX 103,and still further ports for connecting to the public network 101. Thisincreases hardware and software requirements, as well as cost, and alsodecreases reliability by having too many failure points.

[0010] A second configuration for utilizing a call center applicationswitch to implement a call or contact center is shown in FIG. 2. Thearrangement of FIG. 2 includes a local area network (LAN) 210 forinterconnecting the call center application switch 206 with a pluralityof agent stations. The functionality required for all of the call centerapplications, as well as the ability to switch contacts into and out ofthe call center, is contained within call center application switch 206.It is noted that while the LAN 210 is shown as interconnecting theagents with the call center application switch, separate connectionsbetween the call center switch 206 and agents 201-204 may also beimplemented. The approach shown in FIG. 2 also has several flaws. Oneproblem is that the PBX is eliminated from the entire architecture. Thefunctionality of the PBX is instead implemented in call centerapplication switch 206. However, since such a switch is not designed tobe a full PBX, some of the functionality of a typical PBX is notincluded in such a call center switch. For example, general purposeconferencing, unified messages and other functions normally included inthe PBX are typically not included in a call center applications switch.

[0011] Still another architecture for integrating a call centerapplication switch with the PBX is shown in FIG. 3. The architecture ofFIG. 3 includes a separate PBX 302 and a call center applications switch301. Each of the PBX 302 and call center application switch 301 mayindependently talk to a wide area network (WAN) 350. Agents that requirea call center applications to service customers are connected to a LAN320 for communication with call center applications switch 301. Generalpersonnel within the company, whose telephone sets are indicated by303-306, are connected only to PBX 302 for general inbound and outwardcalling. Finally, supervisory personnel 311-315, who require access toboth the PBX 302 for general calling purposes, and to call centerapplications switch 301 to monitor and/or participate in call centerapplications, are connected to both PBX 302 and call center applicationsswitch 301.

[0012] The arrangement of FIG. 3 permits those personnel utilizingmostly PBX functionality to configure their systems with only one portfor access to the PBX. Personnel stationed at stations 307-310 aretypically configured for access to call center applications switch 301.The disadvantages of the arrangement shown in FIG. 3 is that any of thepersonnel at stations 311-315 may be on the telephone or servicing acontact from either PBX 302 or call center applications switch 301, whenthe other of the two requests contact with the particular person.Moreover, the stations 311-315 which require access to both, alsorequire duplicative hardware and software.

[0013] In view of the above, there exists a need in the art for animproved and economical manner in which a contact center system can beintegrated into a system, which also includes a PBX. Ideally, thefunctionality of both the PBX and contact center applications switch 301should be utilized in conjunction with one another to maximize theeffectiveness of the system.

SUMMARY OF THE INVENTION

[0014] The above and other problems with the prior art are overcome inaccordance with the present invention, which relates to an integratedcontact center capable of inward/outbound calling which utilizes both acall center application switch and a conventional PBX. Both are incommunication with all agents over a local area network, and softwareresident preferably in the applications switch control—directly orindirectly—which of either the applications switch or the PBX accessesand/or controls the various agent stations.

[0015] Control of agents stations may be passed between the PBX andcontact center switch either on a temporary bases or a semi-permanentbasis, or even on a permanent basis. Tables may be maintained in thecall center applications switch indicating all of the agents availableonline, and which of the PBX or call center applications switch hascontrol over such agents.

BRIEF DESCRIPTION OF THE DRAWINGS

[0016]FIG. 1 shows prior art contact center configuration;

[0017]FIG. 2 shows a second prior art contact center configuration;

[0018]FIG. 3 shows still another prior art contact center configurationin which a contact center utilizes both a PBX and a contact centerswitch;

[0019]FIG. 4 shows the architecture an exemplary embodiment of thepresent invention; and

[0020]FIG. 5 shows a flow chart of software which preferably runs in thecontact center switch in accordance with the teachings of the presentinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0021]FIG. 4 depicts a high level functional diagram of the basicarchitecture of the present invention. The arrangement of FIG. 4represents only an exemplary embodiment, and other networkconfigurations are possible.

[0022] Public network 480 may be the public switched telephone network(PSTN) or, in the case of more modern contact centers, may be theInternet. Moreover, it is possible that either PBX 401 or switch 402 maycommunicate with one or both of the Internet and the PSTN. Thearrangement of FIG. 4 also includes a local area network (LAN) 410,exemplary agent terminals 404-408, each connected to communicate withthe PBX 401 via LAN 410. Each agent is also connected to contact centerswitch 402, and may access the contact center applications as needed.Each agent station 404-408 may include an audio terminal and a dataterminal.

[0023] In operation, the PBX switch fabric within PBX 401 can respond toand initiate communications between any desktop device 404-408 and anyother desktop device 404-408 and/or public network 480. The defaultcondition is that the PBX is connected to the desktop agents 404-408 andhas complete control over such agents. When a particular agent desiresto log directly into the switch 402, that agent logs on and the switch402 then takes control over the desktop from the PBX 401.

[0024] Optionally, the switch 402 may advise the PBX 401 over LAN 410 ofthe hand-off in control for a particular agent. Alternatively, thedesktop agent itself may send either an in-band or out of band messageto PBX 401 indicating that control has been passed off to the switch402. Another method is for the contact center switch to initiate aconnection to the appropriate agent at the beginning of the agent'sshift via the PBX. This is accomplished by sending a signal to the PBXto create a virtual connection from the contact center switch to theagent; in this instance, the contact center switch looks to the PBX likea set of desktop devices or a set of multi-channel packet trunks—nospecial protocol or API is required to coordinate interaction betweenthe PBX and the contact center switch.

[0025] In all cases, since only control information is sent to the PBXfrom the contact center switch, and such control information goes overthe existing local area network, no extra hardware is required toestablish and maintain the connection between the contact center switchand the agent desktop, yielding a cost-effective solution forcoordinating interaction between the contact center switch and the PBX.

[0026] Once an agent is logged into the switch 402, the switch 402 mayinteract with such agent to facilitate the implementation of numerousapplications. Such applications may involve the interconnection of agentstations with parties over public network 480, the interaction of agentstations with other computers, and/or any of a variety of functionstypical of contact centers.

[0027] The switch 402 may also interface with other peripherals (notshown) such as database servers, integrated voice response systems, etc.The switch 402 may have more or less switching capacity than PBX 401.

[0028] In an additional embodiment, the switch 402 and PBX 401 mayarbitrate control of specific agent stations over LAN 410. The switch402 may itself control which of PBX 401 or switch 402 controls anyparticular agent station.

[0029] During contact center operation, the switch 402 switching fabricmay occasionally need to connect with a desktop agent station beingcontrolled by PBX 401. Such a scenario could arise when a contact takingplace via switch 402 requires a supervisor or other desktop agent topatched in, and wherein such supervisor or other desktop agent iscontrolled by the PBX 401 rather than switch 402. Such temporarypatch-ins can be accomplished via a temporary hand-off for a particularcontact. After the contact is completed, control will automaticallyrevert back to the PBX for the additional agent patched into the switch402.

[0030] One exemplary technique for accomplishing the foregoing is todefine a message exchange protocol between the PBX 401 and the callcenter switch 402. A default condition includes control of a specifiedagent, (e.g., 406) being vested in the PBX 401. When it is desired toredirect control of the agent to the call center application switch, amessage is sent from the call center switch 402, to the PBX, whichcauses the PBX to relinquish control of the agent. Thus, the PBX 401will no longer send messages to the agent and/or read responses. At atime when control was turned over to the call center application switch402, the optional table within said switch 402 is updated to reflect thefact that call center switch 402 is now in control of the particularagent 406. Messages may now be transmitted from call center switch 402to agent 406, and the PBX will send no further messages to agent 406until advised to do so by call center switch 402.

[0031] Note that the handoff of control may optionally be accomplishedwithout the agent 406 even knowing. Instead, the address of the PBX onthe network is known to the call center switch 402. Thus, during suchtime as switch 402 has control, it will receive messages destined forthe PBX network address and originated by agent 406 will process suchmessages. At the end of the time that switch 402 is controlling agent406, it will send a message to PBX 401 to relinquish control and thencease itself to receive or process messages from agent 406.

[0032] By communicating with the switch 402 and PBX 401, all of theswitching capacity of both of the modem switch 402 and the PBX 401 maybe, utilized. There is no master slave relationship, nor is the PBXutilized as a patch panel, thereby effectively wasting its switchingcapacity. Rather, the switching capacity of the contact center iscomprised of the switching capacity of both of the PBX 401 and switch402, thereby maximizing the use of all components in a hybridconfiguration.

[0033] A table may be maintained within the switch 402. If control is tobe transferred to the PBX 401, the table so indicates and the switch 402then knows not to attempt control of such an agent. Alternatively, anyof the agents 404-408 may designate whether they ought to be controlledby the switch 402 or the PBX 401. By sending an appropriate message toboth PBX 401 and switch 402, control conflicts are avoided and thespecified device maintains control of the desktop agent until a newmessage is sent by such agent. In such a system that allows each agentstation to specify whether the call center 402 or the PBX 401, the callcenter switch 402 may still have the ability to at least temporarilyoverride such preference. This ability would be utilized in the eventthat one of agents 404-408 is requested on a call that is not controlledby whichever of PBX 401 or switch 402 is controlling the subject agent.Thus, control is normally as specified by the agent, except fortemporary overrides.

[0034] In other embodiments, the switch 402 itself may assign the PBX tohandle certain agent stations, while maintaining control of other agentstations for itself based on any desired factors. This decision made bythe switch may account for a variety of factors. For example,applications which involve agents simply receiving a call from a callingcustomer, and little more, may be handled by the PBX, since suchapplications require only basic switching capabilities. Otherapplications, which require conferencing, supervisors, or interface withother processors and computers and thus, require the vast functionalityof switch 402, may be handled through such central processor.

[0035] Still another criteria for dividing control of desktop agents404-408 may be the role in which any agent is placed at any particularduration of time. For example, an agent designated to a particularsimplistic task which can be handled by the PBX 401 may be controlledsolely by the PBX 401, whereas the same agent, when redesignated forother tasks, may be controlled by the central processor. The control maybe divided among switch 402 and PBX 401 based upon simply the number ofagents each is capable of controlling, as well as the switching capacityavailable in each of the switch 402 and PBX 401. Any subdivision ofagents between one of more PBX's and one or more call center switchesmay be implemented, thereby allowing the switching capacity of both theswitch 402 running the applications, as well as the PBX 401, to be used.

[0036]FIG. 5 shows a high level flow chart of the steps executed by theswitch 402 when one of agents 404-408 logs on. At start 501, the log onmessage is received at block 502 and control is transferred to block503. The log on message includes information from the agent logging onindicative of whether such agent should be controlled by switch 402 orPBX 401. Such information may be derived by the roll in which the agentis acting, or privileges granted by the security software operablewithin each one of agent terminals 404-408.

[0037] The switch 402 determines whether it or PBX 401 will becontrolling the particular agent and advises PBX 401 of the same atblock 504. Control is then given to switch 402 at block 505, and tablesindicative of each of the agents 404-408, as well as whether the PBX 401or switch 402 is controlling each such agent, are updated.

[0038] It is noted that the functional diagram shown in FIG. 5 is forimplementing the configuration in which the determination as to which ofPBX 401 or switch 402 controls each of agents 404-408. It is notablehowever, that the determination may be made in advance in theprogramming of switch 402. Specifically, as previously noted, switch 402may itself include a preprogrammed table indicative of which of theagents should be controlled by itself, as well as which agent should becontrolled by PBX 401. In such a case, when an agent logs on the switchimmediately looks up the appropriate information and either transferscontrol the PBX 401 if required or maintains control of the agent on itsown. Alternatively, the switch can be programmed to a default, with theagent having an option to override that default.

[0039] While the above describes the preferred embodiment in theinvention, various modifications or additions will be apparent to thoseof skill in the art. Such modifications and additions are intended to becovered by the following claims.

What is claimed:
 1. Apparatus for controlling a plurality of agentstations in a contact center, said apparatus comprising: a switch, forrunning contact center applications software and for controlling agentstations and facilitating switching between agent stations and customersor other agent stations; a Private Branch Exchange (PBX) for controllingagent stations and for facilitating switching between said agentstations and said customers or other agent stations; control means fordetermining whether a particular agent station should be controlled bysaid PBX or said switch, and for allocating said control.
 2. Theapparatus of claim 1 wherein said control means is contained within saidswitch.
 3. The apparatus of claim 1 wherein said control means relies atleast in part on a message sent from a particular agent in order todetermine whether said particular agent should be controlled by eitherthe PBX or the switch.
 4. The apparatus of claim 3 wherein said controlmeans maintains a table indicative of which of said agent stations arepresently being controlled by said switch, and which are beingcontrolled by said PBX.
 5. The apparatus of claim 1 wherein said controlmeans allocates control to said PBX for some duration and then allocatescontrol to said switch for some duration.
 6. The apparatus of claim 1wherein said allocation is dynamic, said control being changedrepeatedly from said PBX to said switch during operation.
 7. Apparatusfor implementing a contact center comprising: a PBX, for switchingcontacts within said contact center; a switch, said central processorcomprising means for switching contacts within said contact center, andmeans for controlling whether said switch or said PBX is responsible forswitching said contacts to and from any particular agent.
 8. Theapparatus of claim 7 wherein said switch further comprises means forrunning software contact center applications, said applications beingimplemented in contacts controlled by said PBX as well as in contactscontrolled by said switch.
 9. The apparatus of claim 7 wherein saidmeans for controlling comprises apparatus for temporarily changing aparticular agent contacts from being controlled by said PBX to beingcontrolled by said switch for the purpose of a single contact or portionthereof.
 10. Apparatus of claim 8 wherein said means for controllingcomprises apparatus for temporarily changing a particular agent contactsfrom being controlled by said switch to being controlled by said PBX forthe purpose of a single call.
 11. An agent station for use in a contactcenter, the agent station comprising: means for establishing contactsthrough a switching arrangement; and means for sending a messageindicative of which of a plurality of switching arrangements is todetermine which contacts are routed to and from said agent station. 12.The agent station of claim 10 wherein said means for sending a messagesends messages indicative that a different one of said switchingarrangements should control said agent station.
 13. A switch for use ina contact center comprising: control means for instructing a PBX as towhich of a plurality of agents said PBX is responsible for controlling;switching means for switching contacts to and from agents, the controlof which is not done by the PBX.
 14. The switch of claim 12 wherein saidcontrol means dynamically varies, during system operation, which agentsare controlled by said switch, and which agents are controlled by saidPBX.
 15. A method of switching contacts through a contact center to anagent comprising: determining, for a particular agent, which of either aPBX or other switch should control the particular agent; and after saiddetermination, switching said contact through to said agent via eitherthe PBX or the switch, as said determining step requires.
 16. A methodof controlling an agent station in a contact center, the methodcomprising the steps of: logging on from the agent station andspecifying, during said logon, which of a plurality of at least twoswitching means should control switching to and from said agent; andduring operation of said center, controlling said agent station by adifferent one of said at least two switching means temporarily.
 17. Themethod of claim 16 wherein one of said switching means is a contactcenter having software applications and another of said switching meansis a PBX.
 18. A call center switch comprising: a processor for receivinga logon message from each of a plurality of agent terminals, and forparsing the logon message to ascertain a specified one of severalpossible switching arrangements to interface said agent sending saidlogon message to a public network; and switching means for switchingcontacts to and from agents.
 19. The call center switch of claim 18further comprising a table within said switch for maintaining a list ofwhich agents are presently being controlled by each of said severalswitching arrangements.
 20. The call center switch of claim 19 connectedto a Local Area Network (LAN), and wherein said LAN is connected to aPBX.
 21. A method of processing a contact in a contact center tofacilitate the intervention of an additional party, the methodcomprising the steps of: facilitating a connection between an agentstation and a remotely located terminal over a public network, the agentstation being controlled by a contact center switch connected to a LAN;signaling said contact center switch to add an additional entity to thecontact; sending a message from said contact center switch to a PBX oversaid LAN, said message causing control of said entity to be added tochange from said PBX to said contact center switch, and adding saidentity to said contact.
 22. The method of claim 21 wherein control ofsaid added entity is returned to said PBX during said contact.
 23. Themethod of claim 22 wherein control of said agent is returned to said PBXafter said contact is completed.
 24. A contact center switch comprising:processing means for receiving logon messages from a plurality ofagents, each agent capable of operating in a plurality of roles, thelogon messages containing information indicative of which role in whichthe agent is operating; and software for determining, based at least inpart on the logon message, whether the switch or another device controlssaid each agent.
 25. The contact center switch of claim 24 wherein saidother device is a PBX.
 26. Apparatus of claim 25 wherein said PBX andsaid contact center switch are connected to a network, said agents alsobeing connected to said network, and wherein a communications protocolis used to communicate between said contact center switch and said PBXover the network, and wherein said contact center switch and said agentscommunicate using the same communications protocol.
 27. A method ofdetermining which of a plurality of switching apparatus connected toagent stations in a contact center should control each of said agents,the method comprising the steps of: receiving a logon message from eachof a plurality of agents, and assigning control of said agent for theinitiation and acceptance of contacts through one of a plurality ofswitching apparatus, said step of assigning being based at least in partupon said logon message.
 28. The method of claim 17 wherein differentagents are assigned to different switching apparatus.